<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script src="./js/lodash.js"></script>
    <script>
      // _.castArray(value): 如果 value 不是数组, 那么强制转为数组。
      console.log(_.castArray("a")); // ['a']
      console.log(_.castArray({ a: 1, b: 3 })); // [{ a: 1, b: 3 }]

      // _.clone(value): 创建一个 value 的浅拷贝。
      const obj1 = { a: 1, b: { c: 2 } };
      console.log(_.clone(obj1));
      obj1.b.c = 3;
      console.log(_.clone(obj1));

      // _.cloneDeep(value): 这个方法类似_.clone，除了它会递归拷贝 value。（注：也叫深拷贝）。
      const obj3 = _.cloneDeep(obj1);
      obj1.b.c = 4;
      console.log(obj3, obj1);

      // _.conformsTo(object, source)
      const object = { a: 1, b: 2 };
      console.log(
        _.conformsTo(object, {
          b: function (n) {
            return n > 1;
          },
        })
      );

      // _.eq(value, other), gt, gte, lt, lte
      console.log(_.eq(12, 12), _.eq({ a: 1 }, { a: 1 }));

      //
    </script>
  </body>
</html>
